x_train = x(1:100,:);
y_train = y(1:100,:);
x_test = x(101:end,:);
y_test = y(101:end,:);
%数据归一化
[train_input,inputps] = mapminmax(x_train');
[train_output,outputps] = mapminmax(y_train');
%节点设置
inputnum = size(x,2);
hiddennum = 6;
outputnum = 1;
%初始化
length = inputnum*hiddennum+hiddennum+hiddennum*outputnum+outputnum; %优化参数个数
bounds = ones(length,1)*[-1,1]; %参数取值范围[-1,1]
sizepop = 20;
param = rand(sizepop,length);
net = newff(train_input,train_output,hiddennum);
for i = 1:sizepop
fit(i,:) = func(param(i,:),inputnum,hiddennum,outputnum,net,train_input,train_output);
end
initPop = [param,fit];
%GA寻优
bestparam = ga(bounds,&